package com.masterclient.app.businessmodule.usermodule.login.contract;

import com.eoner.baselib.presenter.FCBasePresenter;
import com.eoner.baselib.presenter.IFCBaseView;
import com.masterclient.app.businessmodule.usermodule.login.beans.AuthBindData;
import com.masterclient.app.businessmodule.usermodule.login.beans.InviteInfoData;
import com.masterclient.app.businessmodule.usermodule.login.beans.LoginBean;
import com.masterclient.app.businessmodule.usermodule.login.beans.LoginSuccessData;

/**
 * 作者：sean
 * 创建时间：2017/7/24 19:51
 * 功能说明：
 */

public interface PwdLoginContract{

    interface View extends IFCBaseView {
      void loginSuccess(LoginBean.LoginData data);
        void loginFailed(String msg, String failReason);
        void authLoginData(boolean isOther, LoginSuccessData data,String msg);
        void authLoginError(String msg, String failReason);
        void showInviteInfo(InviteInfoData data);
        void showInviteInfoFail(String msg);
        void authBindSuccess(String code,AuthBindData data,String msg,String inviter_code);
        void authBindFailded(String msg);
    }

    abstract static class Presenter extends FCBasePresenter<View> {

        public abstract void pwdLogin(String mobile,String pwd);
        public abstract void authLogin(String auth_type,String head_url,String nickname,String union_id,String uid,String inviter_code);
        public abstract void getInviteInfo(String code);
        public abstract void authBind(String auth_type, String mobile, String union_id,String invite_id,String uid,String nick_name,String headimgurl,String nonce,String customer_id,String reward_id);
        
    }
}